import { login } from '@/api/user'

const state = {
  // 暂存token，使用本地存储实现数据持久化，再使用短路运算判断
  token: localStorage.getItem('token') || ''
}

const mutations = {
  // 设置token
  setToken(state, token) {
    state.token = token
    localStorage.setItem('token', token)
  }
}
const actions = {
  // 登录
  async login(context, payload) {
    // 发送登录请求
    const res = await login(payload)
    // 将返回的token提交到操作token函数中
    context.commit('setToken', res.data.token.token)
    // 记录登录时的时间，用来做手动超时处理
    localStorage.setItem('time', Date.now())
  }
}

export default {
  namespaced: true,
  state,
  mutations,
  actions
}

